item where found)
(when members
;; So x and no-x builds won't differ.
- (setq members (sort (copy-sequence members) 'string<))
+ (setq members
+ (sort (copy-sequence members)
+ (lambda (x y)
+ (cond ((and (stringp x) (stringp y))
+ (string< x y))
+ ;; Put all non-strings before strings.
+ ((stringp y) t)
+ ((stringp x) nil)
+ ;; For two non-strings,
+ ;; use the order they appear in MEMBERS.
+ (t (member y (member x members)))))))
(while members
(setq item (car (car members))
members (cdr members)